package framework.util.http;

import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

/**
 * 解析HttpRequest请求参数的工具类
 */
public class _HttpRequestUtil {

	/**
	 * 将HttpRequest里的请求参数转换成Map，<b>如果请求参数的value值为空，则返回的Map的value对应是为null</b>
	 *
	 * @param request
	 * @return
	 * @author 吴宇亮
	 * @date 2019年1月8日
	 */
	public static Map<String, String> getRequestMap(HttpServletRequest request) {
		Map<String, String> map = new HashMap<>();

		Enumeration<String> paramNames = request.getParameterNames();
		while (paramNames.hasMoreElements()) {
			String key = paramNames.nextElement();
			String[] valueArr = request.getParameterValues(key);
			
			if (valueArr.length > 0) {
				String value = valueArr[0];
				if (value.length() != 0) {
					map.put(key, value);
				}else{
					map.put(key, null);
				}
			}
		}

		return map;
	}

}
